package JVM.第01篇_字节码篇;

/**
 * ● class文件结构概述
 * Class文件的结构并不是一成不变的，随着Java虚拟机的不断发展，
 * 总是不可避免地会对Class文件结构做出一些调整，但是其基本结构和框架是非常稳定的。
 * Class文件的总体结构如下:
 *                                      16进制：
 *      ● 魔数             4字节          cafebabe
 *      ● Class文件副版本     2字节
 *        Class文件主版本     2字节         34
 *                                       34：10进制 就是52  相当于1.8   53 ：1.9
 *      ● 常量池
 *      ● 访问标识(或标志)
 *      ● 类索引，父类索引，接口索引集合
 *      ● 字段表集合
 *      ● 方法表集合
 *      ● 属性表集合
 *
 *  4字节   //cafebabe   //class文件开头    表示这是个class文件
 *  2字节   // Class文件副版本
 *  2字节   //  Class文件主版本
 *  2字节   //  常量池计数器    0：没有任何常量  [1-n)   一共 n-1 项常量
 *          // 这就是一个 java 不能出现多于 指定数的常量
 *
 *  中间一堆常量 信息 ...
 *
 *  2字节   //访问标识
 *  2字节    //当前类索引
 *  2字节    //父类索引
 *  2字节    //实现接口的计数器
 *  2字节    //字段计数器
 *      2字节    //字段访问标识
 *      2字节    //字段名素引
 *      2字节    //字段描述符索引
 *      2字节    //字段的属性计数器
 *  2字节    //方法计数器
 *      2字节    //方法的访问标识
 *      2字节    //方法名索引
 *      2字节    //方法描述符索引
 *      2字节    //方法的属性计数器
 *
 *
 */
public class C1_class文件结构细节 {

}
